package com.ktgj.service.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

/**
 * 合同			
对象 contract
 * 
 * @author ruoyi
 * @date 2021-09-03
 */
public class Contract extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 合同ID */
    private Long contractId;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contractNumber;

    /** 合同的类型:1,和供应商之间的合同；2，和代理商之间的合同； */
    @Excel(name = "合同的类型:1,和供应商之间的合同；2，和代理商之间的合同；")
    private String contractTypeid;

    /** 程序对接方式: 1,接口对接;2,活动码验证;3,线下; */
    @Excel(name = "程序对接方式: 1,接口对接;2,活动码验证;3,线下;")
    private String programDockingMode;

    /** PartnerID */
    @Excel(name = "PartnerID")
    private Long PartnerID;


    /** 合同开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 合同结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    /** JSJ商务联系人姓名 */
    @Excel(name = "JSJ商务联系人姓名")
    private String jsjBusinessContactName;

    /** JSJ商务联系人电话 */
    @Excel(name = "JSJ商务联系人电话")
    private String jsjBusinessContactTel;

    /** 对方商务联系人姓名 */
    @Excel(name = "对方商务联系人姓名")
    private String businessContactName;

    /** 对方商务联系人电话 */
    @Excel(name = "对方商务联系人电话")
    private String businessContactTel;

    /** 备注信息 */
    @Excel(name = "备注信息")
    private String remark;

    /** 发票抬头 */
    @Excel(name = "发票抬头")
    private String invoiceTitle;

    /** 项目 */
    @Excel(name = "项目")
    private String invoiceProject;

    /** 地址 */
    @Excel(name = "地址")
    private String invoiceContactAddress;

    /** 接收人 */
    @Excel(name = "接收人")
    private String invoiceContactName;

    /** 对账方式:1,邮箱;2,传真; */
    @Excel(name = "对账方式:1,邮箱;2,传真;")
    private String billcheckWay;

    /** 对账邮箱 */
    @Excel(name = "对账邮箱")
    private String billcheckContent;

    /** 开户行 */
    @Excel(name = "开户行")
    private String backname;

    /** 账号 */
    @Excel(name = "账号")
    private String accountNumber;

    /** 户名 */
    @Excel(name = "户名")
    private String accountName;

    /** JSJ合同签约人 */
    @Excel(name = "JSJ合同签约人")
    private String jsjContractSignedName;

    /** 合同签约人 */
    @Excel(name = "合同签约人")
    private String contractSignedName;

    /** 合同状态：0，未启用；1，启用；2，停止； */
    @Excel(name = "合同状态：0，未启用；1，启用；2，停止；")
    private String status;

    /** 操作人ID */
    @Excel(name = "操作人ID")
    private Long opemployeeId;

    /** 合作商电话 */
    @Excel(name = "合作商电话")
    private String partnerTel;

    /** 我方签署名义：金色世纪股份公司，和逸程 */
    @Excel(name = "我方签署名义：金色世纪股份公司，和逸程")
    private String hostPartnerId;

    /** 结算周期：10，日结；20，周结；30，月结；40，半年结；50，年结； */
    @Excel(name = "结算周期：10，日结；20，周结；30，月结；40，半年结；50，年结；")
    private String billperiod;

    /** 签约时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "签约时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date contractTime;

    /** 密级0 一般 2 重要 */
    @Excel(name = "密级0 一般 2 重要")
    private String secretClass;

    /** 经手人或签约人邮箱 */
    @Excel(name = "经手人或签约人邮箱")
    private String jsjContractSignedEmail;

    /** 经手人或签约人电话 */
    @Excel(name = "经手人或签约人电话")
    private String jsjContractSignedTel;

    /** 洽谈人或商务联系人邮箱 */
    @Excel(name = "洽谈人或商务联系人邮箱")
    private String jsjBusinessContactEmail;

    /**
     * 合同和合作商一对一关系
     */
    private KtserviceViphallPartner KtserviceViphallPartner;

    public KtserviceViphallPartner getKtserviceViphallPartner() {
        return KtserviceViphallPartner;
    }

    public void setKtserviceViphallPartner(KtserviceViphallPartner KtserviceViphallPartner) {
        this.KtserviceViphallPartner = KtserviceViphallPartner;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Long getOpemployeeId() {
        return opemployeeId;
    }

    public void setOpemployeeId(Long opemployeeId) {
        this.opemployeeId = opemployeeId;
    }

    public Long getPartnerID() {
        return PartnerID;
    }

    public void setPartnerID(Long partnerID) {
        PartnerID = partnerID;
    }


    public void setContractId(Long contractId)
    {
        this.contractId = contractId;
    }

    public Long getContractId() 
    {
        return contractId;
    }
    public void setContractNumber(String contractNumber) 
    {
        this.contractNumber = contractNumber;
    }

    public String getContractNumber() 
    {
        return contractNumber;
    }
    public void setContractTypeid(String contractTypeid) 
    {
        this.contractTypeid = contractTypeid;
    }

    public String getContractTypeid() 
    {
        return contractTypeid;
    }
    public void setProgramDockingMode(String programDockingMode) 
    {
        this.programDockingMode = programDockingMode;
    }

    public String getProgramDockingMode() 
    {
        return programDockingMode;
    }
    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setJsjBusinessContactName(String jsjBusinessContactName) 
    {
        this.jsjBusinessContactName = jsjBusinessContactName;
    }

    public String getJsjBusinessContactName() 
    {
        return jsjBusinessContactName;
    }
    public void setJsjBusinessContactTel(String jsjBusinessContactTel) 
    {
        this.jsjBusinessContactTel = jsjBusinessContactTel;
    }

    public String getJsjBusinessContactTel() 
    {
        return jsjBusinessContactTel;
    }
    public void setBusinessContactName(String businessContactName) 
    {
        this.businessContactName = businessContactName;
    }

    public String getBusinessContactName() 
    {
        return businessContactName;
    }
    public void setBusinessContactTel(String businessContactTel) 
    {
        this.businessContactTel = businessContactTel;
    }

    public String getBusinessContactTel() 
    {
        return businessContactTel;
    }
    public void setInvoiceTitle(String invoiceTitle) 
    {
        this.invoiceTitle = invoiceTitle;
    }

    public String getInvoiceTitle() 
    {
        return invoiceTitle;
    }
    public void setInvoiceProject(String invoiceProject) 
    {
        this.invoiceProject = invoiceProject;
    }

    public String getInvoiceProject() 
    {
        return invoiceProject;
    }
    public void setInvoiceContactAddress(String invoiceContactAddress) 
    {
        this.invoiceContactAddress = invoiceContactAddress;
    }

    public String getInvoiceContactAddress() 
    {
        return invoiceContactAddress;
    }
    public void setInvoiceContactName(String invoiceContactName) 
    {
        this.invoiceContactName = invoiceContactName;
    }

    public String getInvoiceContactName() 
    {
        return invoiceContactName;
    }
    public void setBillcheckWay(String billcheckWay) 
    {
        this.billcheckWay = billcheckWay;
    }

    public String getBillcheckWay() 
    {
        return billcheckWay;
    }
    public void setBillcheckContent(String billcheckContent) 
    {
        this.billcheckContent = billcheckContent;
    }

    public String getBillcheckContent() 
    {
        return billcheckContent;
    }
    public void setBackname(String backname) 
    {
        this.backname = backname;
    }

    public String getBackname() 
    {
        return backname;
    }
    public void setAccountNumber(String accountNumber) 
    {
        this.accountNumber = accountNumber;
    }

    public String getAccountNumber() 
    {
        return accountNumber;
    }
    public void setAccountName(String accountName) 
    {
        this.accountName = accountName;
    }

    public String getAccountName() 
    {
        return accountName;
    }
    public void setJsjContractSignedName(String jsjContractSignedName) 
    {
        this.jsjContractSignedName = jsjContractSignedName;
    }

    public String getJsjContractSignedName() 
    {
        return jsjContractSignedName;
    }
    public void setContractSignedName(String contractSignedName) 
    {
        this.contractSignedName = contractSignedName;
    }

    public String getContractSignedName() 
    {
        return contractSignedName;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setPartnerTel(String partnerTel) 
    {
        this.partnerTel = partnerTel;
    }

    public String getPartnerTel() 
    {
        return partnerTel;
    }
    public void setHostPartnerId(String hostPartnerId) 
    {
        this.hostPartnerId = hostPartnerId;
    }

    public String getHostPartnerId() 
    {
        return hostPartnerId;
    }
    public void setBillperiod(String billperiod) 
    {
        this.billperiod = billperiod;
    }

    public String getBillperiod() 
    {
        return billperiod;
    }
    public void setContractTime(Date contractTime) 
    {
        this.contractTime = contractTime;
    }

    public Date getContractTime() 
    {
        return contractTime;
    }
    public void setSecretClass(String secretClass) 
    {
        this.secretClass = secretClass;
    }

    public String getSecretClass() 
    {
        return secretClass;
    }
    public void setJsjContractSignedEmail(String jsjContractSignedEmail) 
    {
        this.jsjContractSignedEmail = jsjContractSignedEmail;
    }

    public String getJsjContractSignedEmail() 
    {
        return jsjContractSignedEmail;
    }
    public void setJsjContractSignedTel(String jsjContractSignedTel) 
    {
        this.jsjContractSignedTel = jsjContractSignedTel;
    }

    public String getJsjContractSignedTel() 
    {
        return jsjContractSignedTel;
    }
    public void setJsjBusinessContactEmail(String jsjBusinessContactEmail) 
    {
        this.jsjBusinessContactEmail = jsjBusinessContactEmail;
    }

    public String getJsjBusinessContactEmail() 
    {
        return jsjBusinessContactEmail;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("contractId", getContractId())
            .append("contractNumber", getContractNumber())
            .append("contractTypeid", getContractTypeid())
            .append("programDockingMode", getProgramDockingMode())
            .append("PartnerID",getPartnerID())
            .append("opemployeeId",getOpemployeeId())
            .append("startDate", getStartDate())
            .append("endDate", getEndDate())
            .append("jsjBusinessContactName", getJsjBusinessContactName())
            .append("jsjBusinessContactTel", getJsjBusinessContactTel())
            .append("businessContactName", getBusinessContactName())
            .append("businessContactTel", getBusinessContactTel())
            .append("remark", getRemark())
            .append("invoiceTitle", getInvoiceTitle())
            .append("invoiceProject", getInvoiceProject())
            .append("invoiceContactAddress", getInvoiceContactAddress())
            .append("invoiceContactName", getInvoiceContactName())
            .append("billcheckWay", getBillcheckWay())
            .append("billcheckContent", getBillcheckContent())
            .append("backname", getBackname())
            .append("accountNumber", getAccountNumber())
            .append("accountName", getAccountName())
            .append("jsjContractSignedName", getJsjContractSignedName())
            .append("contractSignedName", getContractSignedName())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("partnerTel", getPartnerTel())
            .append("hostPartnerId", getHostPartnerId())
            .append("billperiod", getBillperiod())
            .append("contractTime", getContractTime())
            .append("secretClass", getSecretClass())
            .append("jsjContractSignedEmail", getJsjContractSignedEmail())
            .append("jsjContractSignedTel", getJsjContractSignedTel())
            .append("jsjBusinessContactEmail", getJsjBusinessContactEmail())
            .append("KtserviceViphallPartner", getKtserviceViphallPartner())
            .toString();
    }

}
